#Javascript 严格模式详解

设计模式之工厂模式(3种)详解及代码示例

  工厂模式划分来说总共有三类:简单工厂模式、工厂方法模式和抽象工厂模式。其中简单工厂模式不输入23种设计模式之一,但他们又都属于创建型模式。我们依次讲解这三种工厂模式。  1、什么是简单工厂模式?  首先来说简单工厂,简单工厂模式,又叫做静态工厂模式(StaticFactoryMethod),由一个工厂对象决定创建出...

设计模式之单例模式详解及代码示例

  单例模式的定义就是确保某一个类只有一个实例,并且提供一个全局访问点。属于设计模式三大类中的创建型模式。单例模式具有典型的三个特点单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一个访问该单例的全局访问点;  类图如下:              单例模式优缺点优点:由于单例模式只生成了一个实例...

设计模式之7原则及其示例说明

  在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据一些原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。  我们常见有7条原则,设计模式之禅这本书中概括为6原则,我们本博客就以7原则来进行说明:开闭原则单一职责原则里氏替换原则依赖倒转原则接口隔离原则迪米...

设计模式之合成复用原则示例

  我们以汽车分类管理程序为例来介绍合成复用原则的应用。  分析:汽车按“动力源”划分可分为汽油汽车、电动汽车等;按“颜色”划分可分为白色汽车、黑色汽车和红色汽车等。如果同时考虑这两种分类,其组合就很多。如图所示是用继淨:关系实现的汽车分类的类图。          从图中可以看出用继承关系实现会产生很多子类,而且增加...

设计模式之迪米特法则示例

  如一个明星与经纪人的关系实例。明星由于全身心投入艺术,所以许多日常事务由经纪人负责处理,如与粉丝的见面会,与媒体公司的业务洽淡等。这里的经纪人是明星的朋友,而粉丝和媒体公司是陌生人,所以适合使用迪米特法则,其类图如图所示。              程序代码如下: publicclassLoDtest{p...

设计模式之接口隔离原则示例

  如本例学生成绩管理程序,学生成绩管理程序一般包含插入成绩、删除成绩、修改成绩、计算总分、计算均分、打印成绩信息、査询成绩信息等功能,如果将这些功能全部放到一个接口中显然不太合理,正确的做法是将它们分别放在输入模块、统计模块和打印模块等3个模块中,其类图如图所示:             源码如下:publ...

设计模式之依赖倒置原则示例

  我们来写一个关于司机开车的示例,假设我们现在有个司机,可以开车,然后有一辆奔驰,于是就可以让车跑起来。publicclassDriver{//司机职责就是驾驶汽车publicvoiddrive(Benzbenz){benz.run();}}publicclassBenz{//车的作用就是跑publicvoidrun...

设计模式之里氏替换原则示例

  里氏替换原则强调的是设计和实现要依赖于抽象而非具体;子类只能去扩展基类,而不是隐藏或者覆盖基类,它包含4层含义.  1、子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法  子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法,父类中凡是已经实现好的方法(相对于抽象方法而言),实际上是在设定一系列的规范和契约...

设计模式之开闭原则示例

  以一个关于课程的例子展示开闭原则:/***定义课程接口*/publicinterfaceICourse{StringgetName();//获取课程名称DoublegetPrice();//获取课程价格IntegergetType();//获取课程类型}/***英语课程接口实现*/publicclassEnglis...

IO模型之AIO代码及其实践详解

  AIO是java中IO模型的一种,作为NIO的改进和增强随JDK1.7版本更新被集成在JDK的nio包中,因此AIO也被称作是NIO2.0。区别于传统的BIO(BlockingIO,同步阻塞式模型,JDK1.4之前就存在于JDK中,NIO于JDK1.4版本发布更新)的阻塞式读写,AIO提供了从建立连接到读、写的全异...
代码星球 ·2021-01-24

IO模型之NIO代码及其实践详解

  NIO我们一般认为是NewI/O(也是官方的叫法),因为它是相对于老的I/O类库新增的( JDK1.4中的java.nio.*包中引入新的JavaI/O库)。但现在都称之为Non-blockingI/O,即非阻塞I/O,因为这样叫,更能体现它的特点。而下文中的NIO,不是指整个新的I/O库,而是非阻塞I/...
代码星球 ·2021-01-24

IO模型之BIO代码详解及其优化演进

  BIO是java1.4之前唯一的IO逻辑,在客户端通过socket向服务端传输数据,服务端监听端口。由于传统IO读数据的时候如果数据没有传达,IO会一直等待输入传入,所以当有请求过来的时候,新起一条线程对数据进行等待、处理,导致每一个链接都对应着服务器的一个线程。  BIO是同步阻塞的,如图所示:         ...
代码星球 ·2021-01-24

Spring之AOP原理、代码、使用详解(XML配置方式)

  Spring的两大核心,一是IOC,另一个是AOP,本博客从原理、AOP代码以及AOP使用三个方向来讲AOP。先给出一张AOP相关的结构图,可以放大查看。  1、PointCut(连接点,定义匹配哪些方法)  首先打开Spring的源码,查看PointCut接口设计:publicinterfacePointcut{...

Spring之IOC原理及代码详解

  引用Spring官方原文:ThischaptercoverstheSpringFrameworkimplementationoftheInversionofControl(IoC)[1]principle.IoCisalsoknownasdependencyinjection(DI).Itisaprocesswhe...

Session机制详解及分布式中Session共享解决方案

  http协议本身是无状态的,客户端只需要向服务器请求下载内容,客户端和服务器都不记录彼此的历史信息,每一次请求都是独立的。  为什么是无状态的呢?因为浏览器与服务器是使用socke套接字进行通信,服务器将请求结果返回给浏览器之后,会关闭当前的socket链接,而且服务器也会在处理页面完毕之后销毁页面对象。  然而在...
首页上一页...5556575859...下一页尾页